import SelectItemModel from "@/components-sys/base-form/model/select-item.model";
import TimeOptionModel from "@/components-sys/base-form/model/time-option-model";
import FileObjectModel from "@/components-sys/base-form/model/file-object.model";

import {FormTypeEnum, AcceptEnum} from "@/components-sys/base-form/enums/base-form.enum";

/*表单配置模型*/
export default class FormItemModel {
	//表单名称
	public label: string;
	//字段名
	public prop: string;
	//表单类型
	public type: FormTypeEnum;
	//输入提示站位字符
	public placeholder?: string;
	// 文本域的行高
	public rows?:number;
	//默认值
	public value?: any;
	//是否必填
	public required?: boolean = false;
	//禁用
	public disabled?: boolean = false;
	//只读
	public readonly?: boolean = false;
	// 是否多选
	public multi?: boolean;
	// 文件接收类型
	public accept?: string | AcceptEnum;
	// 文件大小限制（kb）
	public maxSize?: number;

	//下拉选项列表、多选、单选等的数据项
	public itemList?: SelectItemModel[];

	//datePick类型的显示格式
	public textFormat?: string;
	//datePick类型的值的格式
	public valueFormat?: string;
	//datePick类型的禁用日期
	public disabledBefore?: string;
	//datePick类型的禁用日期
	public disabledAfter?: string;
	// 时间选择配置项
	public timeOption?: TimeOptionModel;

	//自定义校验规则
	public validator?:Function;
}
